Systems and methods for record linkage and paraphrase generation using surrogate learning

ABSTRACT

A method of using unlabeled data to train a classifier is disclosed. In one embodiment related to record linkage, the method entails retrieving a set of candidate data records from a master database based on a least one update record. Next, a surrogate learning technique is used to identify one of the candidate data records as a match for the one update record. Lastly, the exemplary method links or merges the update record and the identified one of the candidate data records.

RELATED APPLICATIONS

This application claims priority to U.S. Provisional Application No.61/063,966, which was filed on Feb. 6, 2008, and to U.S. applicationSer. No. 12/341,926, which was filed on Dec. 22, 2008, and which areincorporated herein by reference. U.S. Provisional Applications Nos.61/008,714 and 61/063,047, which were filed respectively Dec. 21, 2007and Jan. 30, 2008, are also incorporated herein by reference.

COPYRIGHT NOTICE AND PERMISSION

A portion of this patent document contains material subject to copyrightprotection. The copyright owner has no objection to the facsimilereproduction by anyone of the patent document or the patent disclosure,as it appears in the Patent and Trademark Office patent files orrecords, but otherwise reserves all copyrights whatsoever. The followingnotice applies to this document: Copyright© 2007, Thomson Reuters GlobalResources.

TECHNICAL FIELD

Various embodiments of the present invention concern machine-learningbased classification systems and methods, particularly as used in recordlinkage for updating databases and/or paraphrase generation for eventextraction.

BACKGROUND

A classifier is a computerized tool that classifies an input set of dataaccording to a finite set of classes. One general form of classifieruses machine learning techniques to make classification decisions.Before using this type of classifier, it is necessary to train theclassifier using preclassified data, referred to as labeled data. Ingeneral, the more labeled data that is available to train theclassifier, the more accurate the classifier can be. However, labeleddata is typically produced manually and is therefore expensive in termsof time and money. The expense of this type of data ultimately limitsthe practical application of classifiers.

SUMMARY

To address this and/or other needs, the present inventors devised, amongother things, new classification methods and systems that do not requiretraining using large sets of labeled data.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a graph of class-conditional probability distributions of afeature x2, which corresponds to one or more embodiments of the presentinvention.

FIG. 2 is a graph of the joint distributions and the posteriordistributions of the class y and the surrogate class x1 for an exemplarycase of surrogate learning, which corresponds to one or more embodimentsof the present invention.

FIG. 3 is a graph of joint distributions and the posterior distributionsof the class y and the surrogate class x1 for a special case ofsurrogate learning, which corresponds to one or more embodiments of thepresent invention.

FIG. 4 is a block and flow diagram of an exemplarysurrogate-learning-based system for record linkage and/or databasemerging, which corresponds to one or more embodiments of the presentinvention.

FIG. 5 is a block and flow diagram of an exemplarysurrogate-learning-based system for generating training data for asentence classifier, which corresponds to one or more embodiments of thepresent invention.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENT(S)

This document, which incorporates the drawings, the abstract, and theappended claims, describes one or more specific embodiments of one ormore inventions. These embodiments, offered not to limit but only toexemplify and teach the invention(s), are shown and described insufficient detail to enable those skilled in the art to implement orpractice the invention(s). Thus, where appropriate to avoid obscuringthe invention(s), the description may omit certain information known tothose of skill in the art.

Overview

One or more of the exemplary system and methods involve semi-supervisedlearning, which refers to the case or situation when the learner orclassifier exploits (a presumably large quantity of) unlabeled data tosupplement a relatively small labeled sample, for accurate induction. Atleast some of the exemplary systems and methods embody a simplesemi-supervised learning technique that relies on assumptions ofclass-conditional feature independence. In particular, when a featureset can be partitioned into two class-conditionally independent sets,the original learning problem can be reformulated in terms of theproblem of learning a predictor from one of the partitions to the other.That is, the latter partition acts as a surrogate for the classvariable. The novel technique is generally referred to herein assurrogate learning. The technique or methodology is described generallyand then in two specific applications: one for record-linkage and theother for paraphrase generation.

General Surrogate Learning

The general surrogate learning technique can be understood inconsidering the problem of learning a classifier from the feature spaceX to the set of classes y={0,1}. Let the features be partitioned intoX=X1×X2. The random feature vector xεX will be representedcorrespondingly as x=(x1, x2). Since the exemplary embodiment isrestricted to a two-class problem, the construction of the classifierinvolves the estimation of the probability P(y=0|x1, x2) at every point(x1, x2)εX.

The exemplary embodiment makes the following assumptions on the jointprobabilities of the classes and features.

-   -   1. P(x1,x2|y)=P(x1|y)P(x2|y) for yε{0,1}. That is, the feature        sets x1 and x2 are class-conditionally independent for both        classes. Note that, when X1 and X2 are one-dimensional, this        condition is identical to the Naive Bayes assumption, although        in general this is weaker.    -   2. P(x1|x2)≠0, P(x1|y)≠0 and P(x1|y=0)≠P(x1|y=1). These        assumptions are to avoid divide-by-zero problems in the algebra        below. If x1 is a discrete valued random variable and not        irrelevant for the classification task, these conditions are        often satisfied.

Considering the quantity P(y, x1|x2) allows one to derive the followingequations.

$\begin{matrix}{{{P\left( {y,{x_{1}❘x_{2}}} \right)} = {\left. {{P\left( {{x_{1}❘y},x_{2}} \right)}{P\left( {y❘x_{2}} \right)}}\Rightarrow{P\left( {y,{x_{1}❘x_{2}}} \right)} \right. = {{P\left( {x_{1}❘y} \right)}{P\left( {y❘x_{2\;}} \right)}}}}{\left. \left( {{from}\mspace{14mu}{the}\mspace{14mu}{independence}\mspace{14mu}{assumption}} \right)\Rightarrow{{P\left( {{y❘x_{1}},x_{2}} \right)}{P\left( {x_{1}❘x_{2}} \right)}} \right. = {\left. {{P\left( {x_{1}❘y} \right)}{P\left( {y❘x_{2}} \right)}}\Rightarrow\frac{{P\left( {{y❘x_{1}},x_{2}} \right)}{P\left( {x_{1}❘x_{2}} \right)}}{P\left( {x_{1}❘y} \right)} \right. = {P\left( {y❘x_{2}} \right)}}}} & (1) \\{{{{{{Since}\mspace{14mu}{P\left( {y = {0❘x_{2}}} \right)}} + {P\left( {y = {1❘x_{2}}} \right)}} = 1},\mspace{14mu}{{Equation}\mspace{14mu} 1\mspace{14mu}{implies}}}{{\frac{{P\left( {{y = {0❘x_{1}}},x_{2}} \right)}{P\left( {x_{1}❘x_{2}} \right)}}{P\left( {{x_{1}❘y} = 0} \right)} + \frac{{P\left( {{y = {1❘x_{1}}},x_{2}} \right)}{P\left( {x_{1}❘x_{2}} \right)}}{P\left( {{x_{1}❘y} = 1} \right)}} = {\left. 1\Rightarrow{\frac{{P\left( {{y = {0❘x_{1}}},x_{2}} \right)}{P\left( {x_{1}❘x_{2}} \right)}}{P\left( {{x_{1}❘y} = 0} \right)} + \frac{\left( {1 - {P\left( {{y = {0❘x_{1}}},x_{2}} \right)}} \right){P\left( {x_{1}❘x_{2}} \right)}}{P\left( {{x_{1}❘y} = 1} \right)}} \right. = 1}}} & (2) \\{{{{Solving}\mspace{14mu}{Equation}\mspace{14mu} 2\mspace{14mu}{for}\mspace{14mu}{P\left( {{y = {0❘x_{1}}},x_{2}} \right)}},{{we}\mspace{14mu}{obtain}}}{{P\left( {{y = {0❘x_{1}}},x_{2}} \right)} = {\frac{P\left( {{x_{1}❘y} = 0} \right)}{P\left( {x_{1}❘x_{2}} \right)} \cdot \frac{{P\left( {{x_{1}❘y} = 1} \right)} - {P\left( {x_{1}❘x_{2}} \right)}}{{P\left( {{x_{1}❘y} = 1} \right)} - {P\left( {{x_{1}❘y} = 0} \right)}}}}} & (3)\end{matrix}$Equation 3 gives P(y=0|x1,x2) as a function of P(x1|x2) and P(x1|y).This can lead to a significant simplification of the learning task whena large amount of unlabeled data is available. The surrogate learningalgorithm involves the following.

-   -   Estimating the quantity P(x1|x2) from only the unlabeled data,        by building a predictor from the feature space X2 to the space        X1.    -   Estimating the quantity P(x1|y) from a smaller labeled sample.        If X1 is finite and ‘small’, this can be done accurately.        Thus, the exemplary embodiment decouples the prediction problem        into two separate tasks, one of which involves predicting x1        from the remaining features. In other words, x1 serves as a        surrogate for the class label. Furthermore, for the two steps        above there is no necessity for complete samples. The labeled        examples can have the feature x2 missing.

Example 1

The following example illustrates the intuition behind surrogatelearning. Consider a two-class problem, where x1 is a binary feature andx2 is a one dimensional real-valued feature. The class-conditionaldistribution of x2 for the class y=0 is Gaussian, and for the class y=1is Laplacian as shown in FIG. 1.

Because of the class-conditional feature independence assumption, thejoint distribution P(x1,x2,y) can now be completely specified by fixingthe joint probability P(x1, y). Let P(x1=0,y=0)=0.3, P(x1=0,y=1)=0.1,P(x1=1,y=0)=0.2, and P(x1=1,y=1)=0.4. The full joint distribution isdepicted in FIG. 2. Also shown in FIG. 2 are the conditionaldistributions P(x1=01x2) and P(y=01x1,x2).

Assume a classifier to decide between x1=0 and x1=1 from the feature x2.If this classifier is used to classify a sample that is from class y=0,it will most likely be assigned the ‘label’ x1=0 (because, for classy=0, x1=0 is more likely than x1=1), and a sample that is from class y=1is often assigned the ‘label’ x1=1. Consequently the classifier betweenx1=0 and x1=1 provides information about the true class label y. Thiscan also be seen in the similarities between the curves P(y=01x1, x2) tothe curve P(x1|x2).

Another way to interpret the example is to note that if a predictor forP(x1|x2) were built on only the samples from the class y=0, P(x1=0|x2)will be a constant value (0.6). Similarly the value of P(x1=0|x2) forsamples of class y=1 will also be a constant value (0.2). That is, thevalue of P(x1=0|x2) for a sample is a good predictor of its class.However, surrogate learning builds the predictor P(x1|x2) on samplesfrom both classes and therefore additionally requires P(x1|y) toestimate the boundary between the classes.

Special Case of Surrogate Learning

The independence assumptions made in the setting above may seem toostrong to hold in real problems, especially because the feature sets arerequired to be class-conditionally independent for both classes. The twoapplications described below are based on a special tailoring of thegeneralized surrogate learning described above.

The problem is set us as learning a classifier from X=X1×X2 to the setof classes y={0,1}. The following assumptions are made:

-   -   1. x1 is a binary random variable. That is, X1={0,1}.    -   2. P(x1,x21 y=0)=P(x1|y=0) P(x2|y=0). The feature x1 is required        to be class-conditionally independent of the remaining features        only for the class y=0.    -   3. P(x1=0, y=1)=0. This assumption says that x1 is a ‘100%        recall’ feature for y=1. (This assumption can be seen to        trivially enforce the independence of the features for class        y=1).

Assumption 3 simplifies the learning task to the estimation of theprobability P(y=0|x1=1, x2) for every point x2εX2. We can proceed asbefore to obtain the expression in Equation 3, with x1=1.

$\begin{matrix}\begin{matrix}{{P\left( {{y = {{0❘x_{1}} = 1}},x_{2}} \right)} = {\frac{P\left( {x_{1} = {{1❘y} = 0}} \right)}{P\left( {x_{1} = {1❘x_{2}}} \right)} \cdot \frac{\begin{matrix}{{P\left( {x_{1} = {{1❘y} = 1}} \right)} -} \\{P\left( {x_{1} = {1❘x_{2}}} \right)}\end{matrix}}{\begin{matrix}{{P\left( {x_{1} = {{1❘y} = 1}} \right)} -} \\{P\left( {x_{1} = {1❘x_{2}}} \right)}\end{matrix}}}} \\{= {\frac{P\left( {x_{1} = {{1❘y} = 0}} \right)}{P\left( {x_{1} = {1❘x_{2}}} \right)} \cdot \frac{1 - {P\left( {x_{1} = {1❘x_{2}}} \right)}}{1 - {P\left( {x_{1} = {{1❘y} = 0}} \right)}}}} \\{= {\frac{P\left( {x_{1} = {{1❘y} = 0}} \right)}{P\left( {x_{1} = {1❘x_{2}}} \right)} \cdot \frac{P\left( {x_{1} = {0❘x_{2}}} \right)}{P\left( {x_{1} = {{0❘y} = 0}} \right)}}} \\{= {\frac{P\left( {x_{1} = {{1❘y} = 0}} \right)}{P\left( {x_{1} = {{0❘y} = 0}} \right)} \cdot \frac{P\left( {x_{1} = {0❘x_{2}}} \right)}{\left( {1 - {P\left( {x_{1} = {0❘x_{2}}} \right)}} \right)}}}\end{matrix} & (4)\end{matrix}$

Equation 4 shows that P(y=0|x1=1, x2) is a monotonically increasingfunction of P(x1=0|x2). This means that after a predictor from X2 to X1is built, one only need to establish the threshold on P(x1=0|x2) toyield the optimum classification between y=0 and y=1. Therefore thelearning proceeds as follows.

-   -   Estimate the quantity P(x1 1 x 2) from only the unlabeled data,        by building a predictor from the feature    -   space X2 to the binary space X1.    -   Use a small labeled sample to establish the threshold on        P(x1=01x2).        In the unlabeled data, we call the samples that have x1=1 as the        target samples and those that have x1=0 as the background        samples. The reason for this terminology is clarified in the        following example.

Example 2

We consider a problem with distributions P(x21 y) identical to Example1, except with the joint probability P(x1, y) given by P(x1=0, y=0)=0.3,P(x1=0, y=1)=0.0, P(x1=1, y=0)=0.2, and P(x1=1, y=1)=0.5. Theclass-and-feature joint distribution is depicted in FIG. 3. Clearly, x1is a 100% recall feature for y=1.

Note that on the samples from the class y=0 it is impossible todetermine whether it is a sample from the target or background betterthan random by looking at the x2 feature, whereas a sample from thepositive class is always a target. Therefore the background samplesserve to delineate the positive examples among the targets.

Below are described applications of the surrogate learning approach tothe problems of record linkage and paraphrase generation. Theseapplications satisfy the assumptions in the second (100% recall)setting.

Exemplary Surrogate-Learning Based Record Linkage Method and System

FIG. 4 shows an exemplary system 400 for linking or merging data recordsusing surrogate learning. In addition to processors 401, system 400includes a memory 402, which stores a master database 410, an updatedatabase 420, a blocking module 430, a surrogate-learning-based matchingmodule 440, and a linking module 450. (These components are implementedusing machine-readable data and/or machine-executable instructions).Processors 401 and memory 402 may take a variety of consolidated and/ordistributed forms.

Record linkage generally refers to process of identification and mergingof records of the same entity in different databases or the unificationof records in a single database. The exemplary embodiment is presentedas a solution to the problem of merging each of 20000 physician records,which are called the update database to the record of the same physicianin a master database of one million records. The update database hasfields that are absent in the master database and vice versa. The fieldsin common include the name (first, last and middle initial), severaladdress fields, phone, specialty, and the year-of-graduation. Althoughthe last name and year-of-graduation are consistent when present, theaddress, specialty, and phone fields have several inconsistencies owingto different ways of writing the address, new addresses, different termsfor the same specialty, missing fields, etc. However, the name and yearalone are insufficient for disambiguation. The exemplary embodiment hadaccess to 500 manually matched update records for training andevaluation (about 40 of these update records were labeled as unmatchablewith the information available).

As FIG. 4 shows the exemplary system and method for record linkageinvolves three main functions or processes: blocking at blocking module430, matching at matching module 440, and linking at linking module 450.

Blocking, in the exemplary system and method, entails querying themaster record database 410 with the last name of one or more updaterecords from update database 420. As a result, a small set of candidaterecords is retrieved from the master record database, with the set ofrecords having a high probability of containing the correct match forone or more of the update records.

Matching at module 440 generally defines features vectors for the one ormore update records and corresponding candidate records, comparing andscoring these feature vectors, and identifying a most likely matchingcandidate record for each update record. Within the feature vectors, thefeature values are either binary (verifying the equality of a particularfield in the update and a master record) or continuous (for example, anormalized string edit distance between fields like street, address,first name, etc.).

More particularly, in the exemplary embodiment, the surrogate learningsolution to the matching problem entails designating the binary featureof equality of year of graduation as the ‘100% recall’ feature x1, andthe remaining features are relegated to x2. The required conditions forexemplary surrogate learning are satisfied because 1) in the exemplaryphysician data it is highly unlikely for two records with differentyear-of-graduation to belong to the same physician and 2) if it is knownthat the update record and a master record belong to two differentphysicians, then knowing that they have the same (or different) year ofgraduation provides no information about the other features. Thereforeall the feature vectors with the binary feature indicating equality ofequality of year-of-graduation are targets and the remaining arebackgrounds.

The exemplary embodiment uses feature vectors obtained from the recordsin all blocks from all 20000 update records to estimate the probabilityP(x1|x2). Logistic regression can be used for this prediction task. Forlearning the logistic regression parameters, the exemplary embodimentdiscarded the feature vectors for which x1 was missing and performedmean imputation for the missing values of other features. Second, theprobability P(x1=1|y=0) was estimated straightforwardly from the countsof the different years-of-graduation in the master record database.

These estimates were used to assign the score P(y=1|x1=1, x2) to therecords in a block (cf. Equation 4). The score of 0 is assigned tofeature vectors which have x1=0. The only caveat is calculating thescore for feature vectors that had missing x1. For such vectors, theexemplary embodiment assigns the score P(y=1|x2)=P(y=1|x1=1,x2)P(x1=1x2). Estimates for both quantities on the right-hand side ofthis equation are readily obtainable. The highest scoring record in eachblock was then flagged as a match if it exceeded some appropriatethreshold.

Linking module 450 links or merges the update record with the matchingmaster record identified by matching module 440.

Exemplary Paraphrase Generation Using Surrogate Learning

Sentence classification is often a preprocessing step for event orrelation extraction from text. One of the challenges posed by sentenceclassification is the diversity in the language for expressing the sameevent or relationship. What is described here and shown in FIG. 5 is asurrogate learning-based system 500 and method for generatingparaphrases for expressing the merger acquisition (MA) event between twoorganizations in a financial news document. The system uses thegenerated paraphrase sentences to train a sentence classifier thatdiscriminates between MA and non-MA sentences occurring in an unlabeledcorpus of news articles.

In addition to processors 501, system 500 includes a memory 502 whichstores a sentence corpus or database 510, a source sentence extractormodule 520, a target and background sentence extractor module 530, aparaphrase classifier module 540, training sentences 550, and a sentenceclassifier module 560. (These components are implemented usingmachine-readable data and/or machine-executable instructions).Processors 501 and memory 502 may take a variety of consolidated and/ordistributed forms.

The exemplary embodiment assumes that the unlabeled sentence corpus istime-stamped and named entity tagged with organizations. Also assumed isthat an MA sentence must mention at least two organizations. Theexemplary approach to generate paraphrases is the following.

At source sentence extractor module 520, the exemplary embodimentextracts a set of source sentences from the corpus 510 that match a fewhigh-precision seed patterns (data structures). An example of a seedpattern used for the MA event is

‘<ORG1> acquired <ORG2>’

where <ORG1> and <ORG2> are place holders for strings that have beentagged as organizations. An example of a source sentence that matchesthe seed is

-   -   ‘It was announced yesterday that <ORG> Google Inc. <ORG>        acquired <ORG> Youtube <ORG>’.        The purpose of the seed patterns is to produce pairs of        participant organizations in an MA event with high precision.

At target and background sentence extractor module 530, the exemplaryembodiment extracts all sentences in the corpus (510) that contain atleast two organizations such that at least one of them matches anorganization in the extracted source sentences, and are within a timewindow of the matching source sentence. Of this set of sentences, allthat contain two or more organizations from the same source sentence aredesignated as target sentences, and the rest are designated asbackground sentences.

In relation to surrogate learning, the binary “organization-pairequality” feature (both organizations in the current sentence being thesame as the those in a source sentence) serves as the ‘100% recall’feature x1. Word unigram, bigram, and trigram features were used as x2.This setup satisfies the required conditions for surrogate learningbecause 1) if a sentence is about MA, the organization pair mentioned init must be the same as that in a source sentence, (i.e., if only one ofthe organizations match those in a source sentence, the sentence isunlikely to be about MA) and 2) if an unlabeled sentence is non-MA, thenknowing whether or not it shares an organization with a source does notprovide any information about the language in the sentence. Since anorganization is unlikely to have a MA relationship with two differentorganizations in the same time period, the backgrounds are unlikely tocontain MA sentences, and moreover the language of the non-MA targetsentences is indistinguishable from that of the background sentences. Ifthe original unlabeled corpus is sufficiently large, the target set isexpected to cover most of the paraphrases for the MA event but maycontain many non-MA sentences as well.

At block 540, the task of classifying paraphrases entails filtering thetarget sentences that are non-MA and flagging the rest of the targets asparaphrases. To this end, the exemplary embodiment defines a classifierbetween the targets and backgrounds. The feature set used for this taskwas a bag of word unigrams, bigrams and trigrams, generated from thesentences and selected by ranking them by mutual information. A supportvector machine (SVM) is used to learn to classify between the targetsand backgrounds and the sentences were ranked according to the scoreassigned by the SVM (which is a proxy for P(x1=1|x2) The scores are thenthresholded to obtain the paraphrases, output and held at trainingsentences 550 for use in training sentence classifier module 560.

Example 3 below lists some sentences to illustrate the surrogatelearning approach. Note that the targets may contain both MA and non-MAsentences but the backgrounds are unlikely to be MA.

Example 3

Seed Pattern: “bought <ORG>”

Source Sentences

-   -   1. <ORG>US Airways<ORG> had said it would have kept the        <ORG>Delta<ORG> name if it bought <ORG>Delta<ORG>.

Target Sentences (SVM Score)

-   -   1. <ORG>US Airways<ORG> were to combine with a standalone        <ORG>Delta<ORG>. (1.0008563)    -   2. <ORG>US Airways<ORG> argued that the nearly $10 billion        acquisition of <ORG>Delta<ORG> would result in an efficiently        run carrier that could offer low fares to fliers. (0.99958149)    -   3. <ORG>US Airways<ORG> is asking <ORG>Delta<ORG>'s official        creditors committee to support postponing that hearing.        (−0.99914371)

Background Sentences (SVM Score)

-   -   1. The cities have made various overtures to <ORG>US        Airways<ORG>, including a promise from <ORG> America West        Airlines<ORG> and the former <ORG>US Airways<ORG>. (0.99957752)    -   2. <ORG>US Airways<ORG> shares rose 8 cents to close at $53.35        on the <ORG>New York Stock Exchange<ORG>. (−0.99906444)

CONCLUSION

The embodiments described above are intended only to illustrate andteach one or more ways of practicing or implementing the presentinvention, not to restrict its breadth or scope. The actual scope of theinvention, which embraces all ways of practicing or implementing theteachings of the invention, is defined only by the issued claims andtheir equivalents.

1. A method of using a processor and a memory for classifying dataassociated with a feature space X to a set of classes y={0,1}, whereinfeatures defining the feature space X are partitioned into X=X1×X2, arandom feature vector xεX is denoted correspondingly as x=(x1, x2), andfeature x1 is a binary random variable, the method comprising:estimating P(x1|x2) from a set of unlabeled data; estimating P(x1=0|x2)from a set of labeled data; determining whether to classify a portion ofthe data to y=0 or y=1 based on the estimated P(x1=0|x2); and logicallyassociating the portion of the data in the memory with the class y=0 orthe class y=1 based on the determination.
 2. The method of claim 1,wherein the unlabeled data is a set of identity records, and the binaryrandom variable indicates whether a field of one of the identity recordsmatches a corresponding field in another identity record.
 3. The methodof claim 1, wherein the feature x1 is a total recall feature for theclass y=1.
 4. The method of claim 1, wherein P(x1,x2|y=0)=P(x1|y=0)P(x2|y=0).
 5. The method of claim 1, wherein the data is a segment oftext from a new article.
 6. A system having a processor and a memory forclassifying data associated with a feature space X to a set of classesy={0,1}, wherein features defining the feature space X are partitionedinto X=X1×X2, a random feature vector xεX is denoted correspondingly asx=(x1, x2), and feature x1 is a binary random variable, the systemfurther comprising: means for estimating P(x1|x2) from a set ofunlabeled data; means for estimating P(x1=0|x2) from a set of labeleddata; means for determining whether to classify a portion of the data toy=0 or y=1 based on the estimated P(x1=0\x2); and means, responsive tothe determination, for logically associating the portion of the data inthe memory with the class y=0 or the class y=1.
 7. The system of claim6, wherein the unlabeled data is a set of identity records, and thebinary random variable indicates whether a field of one of the identityrecords matches a corresponding field in another identity record.
 8. Thesystem of claim 6, wherein the feature x1 is a total recall feature forthe class y=1.
 9. The system of claim 6, wherein P(x1,x2|y=0)=P(x1|y=0)P(x2|y=0).
 10. A method of using a processor and a memory for linking ormerging update records with a master database of data records, themethod comprising: retrieving a set of candidate data records from themaster database based on a least one update record; using surrogatelearning to identify one of the candidate data records as a match forthe one update record; and linking or merging the update record and theidentified one of the candidate data records.